import java.util.HashMap;

public class _1无重复字符的最长子串 {
        public static void main(String[] args) {
            String s= "abcabcbb";
            int k =test(s);
            System.out.println(k);
        }
        public static int test(String s){
            if (s.length()==0) {
                return  0;
            }
            HashMap<Character, Integer> map = new HashMap<Character, Integer>();
            int max = 0;
            int left = 0;
            for(int i = 0; i < s.length(); i ++){
                if(map.containsKey(s.charAt(i))){
                    left = Math.max(left,map.get(s.charAt(i)) + 1);
                }
                map.put(s.charAt(i),i);
                max = Math.max(max,i-left+1);
                int x=0;
            }
            return max;
        }
}
